package com.shrct.businessprocess.organization;

import com.shrct.businessprocess.organization.RCEmployee;
import com.shrct.businessprocess.organization.RCEnterpriseLocation;
import com.shrct.businessprocess.organization.impl.RCEnterpriseImpl;
import com.shrct.businessprocess.organization.proxy.RCEnterpriseProxy;
import edu.fudan.langlab.domain.organization.Party;
import edu.fudan.mylang.pf.EntityImplementation;
import java.util.Collection;
import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;

@EntityImplementation(implementBy = RCEnterpriseImpl.class)
public interface RCEnterprise extends Party {
  public abstract String getCode();
  
  public abstract RCEnterprise setCode(final String code);
  
  public abstract String getShortName();
  
  public abstract RCEnterprise setShortName(final String shortName);
  
  public abstract String getEname();
  
  public abstract RCEnterprise setEname(final String ename);
  
  public abstract String getSpell();
  
  public abstract RCEnterprise setSpell(final String spell);
  
  public abstract String getHelpCode();
  
  public abstract RCEnterprise setHelpCode(final String helpCode);
  
  public abstract String getEnterpriseEnrolNum();
  
  public abstract RCEnterprise setEnterpriseEnrolNum(final String enterpriseEnrolNum);
  
  public abstract String getBank();
  
  public abstract RCEnterprise setBank(final String bank);
  
  public abstract String getBankAccount();
  
  public abstract RCEnterprise setBankAccount(final String bankAccount);
  
  public abstract String getWorkNo();
  
  public abstract RCEnterprise setWorkNo(final String workNo);
  
  public abstract Double getRegCapital();
  
  public abstract RCEnterprise setRegCapital(final Double regCapital);
  
  public abstract String getLegalPerson();
  
  public abstract RCEnterprise setLegalPerson(final String legalPerson);
  
  public abstract String getAptitudeName();
  
  public abstract RCEnterprise setAptitudeName(final String aptitudeName);
  
  public abstract String getAptitudeNo();
  
  public abstract RCEnterprise setAptitudeNo(final String aptitudeNo);
  
  public abstract Boolean getIsBuildin();
  
  public abstract RCEnterprise setIsBuildin(final Boolean isBuildin);
  
  public abstract RCEmployee getBusinessMan();
  
  public abstract RCEnterprise setBusinessMan(final RCEmployee businessMan);
  
  public abstract Collection<RCEnterprise> getChildren();
  
  public abstract RCEnterprise createAndAddtoChildren();
  
  public abstract RCEnterprise createAndAddtoChildren(final Procedure1<RCEnterprise> updater);
  
  public abstract RCEnterprise removeFromChildren(final RCEnterprise rCEnterprise);
  
  public abstract RCEnterprise removeAllChildren();
  
  public abstract Collection<RCEnterpriseLocation> getLocations();
  
  public abstract RCEnterpriseLocation createAndAddtoLocations();
  
  public abstract RCEnterpriseLocation createAndAddtoLocations(final Procedure1<RCEnterpriseLocation> updater);
  
  public abstract RCEnterprise removeFromLocations(final RCEnterpriseLocation rCEnterpriseLocation);
  
  public abstract RCEnterprise removeAllLocations();
  
  public abstract RCEnterprise getParent();
  
  public abstract RCEnterprise setParent(final RCEnterprise parent);
  
  public abstract RCEnterpriseProxy toProxy();
}
